package com.weijin.service;

import com.weijin.vo.PageVo;
import com.weijin.model.User;

/**
 * @Author WeiJin
 * @Version 1.0
 * @Date 2025/3/18 14:01
 */
public interface IUserService {

    /**
     * 新增用户
     *
     * @param user 用户信息
     * @return 用户id
     */
    String addUser(User user);

    /**
     * 根据用户id删除用户
     *
     * @param id 用户id
     * @return 影响数据记录条数
     */
    int deleteOne(String id);

    /**
     * 修改用户信息
     *
     * @param user 用户信息
     * @return 修改后的用户信息
     */
    User editByUserId(User user);

    /**
     * 根据用户id获取用户信息
     *
     * @param id 用户id
     * @return 用户信息
     */
    User detail(String id);

    /**
     * 分页查询用户信息
     *
     * @param username   用户名
     * @param pageNumber 页码
     * @param pageSize   每页记录数
     * @return 返回的用户信息
     */
    PageVo<User> page(String username, int pageNumber, int pageSize);

    /**
     * 用户登录
     * @param username 用户名
     * @return 用户信息
     */
    User login(String username);
}
